<html lang="en">
<head>
<title>tslib</title>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
<link rel="stylesheet" type="text/css" href="tslib.css">
<!--
<link rel="shortcut icon" href="favicon.ico">
-->
</head>
<body bgcolor="#ffffff" text="#000000">
<div class="contents">
<center>
<img src="logo.svg" alt="tslib logo" style="width:60%; max-width:500px; padding-top: 8px;">
</center>

<p style="font-size: 190%; text-align: center;">
<b>C library for filtering touchscreen events</b>
</p>

<p>
tslib is a cross-platform library that provides access to touchscreen devices
and the ability to apply filters to their input events.
</p>
<p>
<b>Supports...</b>
<p>
On Linux and FreeBSD
it supports <i>all modern devices</i> using input event drivers and includes
<i>multitouch</i> support.
<p>
Furthermore it supports the
Palm Pre's CY8MRLN, UCB1x00, Sharp Zaurus sl-c7x0 and sl-5500/5000d,
HP / Compaq iPaq H3600 and DMC, DMC DUS3000 Series, Hitachi Webpad, IBM Arctic II,
Tatung Webpad, eGalax 0112, 210 and 0100, Waveshare and more,
in part for other host platforms too.
<p>
<b>What is tslib used for?</b>
<p>
tslib is used to <i>access</i> touch screen devices, in case the operating system
doesn't provide driver support. It may instead also only be used to <i>optimize</i>
the touch user experience by applying
<a href="https://github.com/libts/tslib/blob/master/README.md#filter-modules">
mathematical filters</a> in any number or order.
The libts library is highly configurable and portable. tslib includes tools to
<i>calibrate</i>, test and use the library.
(Via <a href="https://github.com/libts/tslib/#use-the-filtered-result-in-your-system-ts_uinput-method">
ts_uinput</a> the app or toolkit gets to use the usual evdev input device with
filtered touchscreen events).
It is well suited for embedded
devices and used in many commercial products. tslib includes
<a href="https://github.com/libts/tslib/blob/master/README.md">documentation</a>
on how to use it. Compared to <a href="https://gitlab.freedesktop.org/libinput/libinput">
libinput</a> tslib is more like a box of legos. tslib can be used together
with libinput, providing a filtered device for libinput.
<p>
<b>Download tslib</b>
<p>
tslib only provides source archives. The latest release is version <b>1.23</b>
including libts library version 0.10.5, released on the <b>20th of Feb 2024</b>.
Get it from our <a href="https://github.com/libts/tslib/releases">release page</a>
(<a href="https://gitlab.com/tslib/tslib/tags">mirror</a>).

<p>
<b>tslib is free software</b>
<p>
The library is available under the
<a href="https://github.com/libts/tslib/blob/master/COPYING">LGPLv2</a> license.
Check out the code at <a href="https://github.com/libts/tslib">our git
repository</a> (<a href="https://gitlab.com/tslib/tslib">mirror</a>).
Feel free to <a href="https://github.com/libts/tslib/blob/master/CONTRIBUTING.md">
contribute</a> yourself and join our <a href="http://lists.infradead.org/mailman/listinfo/tslib">
mailing list</a>.

<p>
<b>Who makes tslib?</b>
<p>
tslib exists thanks to
<a href="https://github.com/libts/tslib/blob/master/THANKS">various
contributors</a> from companies across the world and is open to your
input. It was originally written by Russel King in 2001 and is
<a href="https://github.com/libts/tslib/blob/master/AUTHORS">actively
maintained</a>.

<p>
<b>Consider donating</b>
<p>
tslib is largely developed and maintained by Martin in his spare time.
If you use tslib, please help maintaining it by
<a href="https://github.com/sponsors/merge">donating</a>.
</div>
</body>
</html>
